package com.mirana.module.common.model.dictpm;

import com.mirana.frame.base.model.BaseModel;
import com.mirana.frame.db.base.anno.ColumnPlus;
import com.mirana.frame.db.base.anno.FKPlus;
import com.mirana.frame.db.base.anno.Notes;
import com.mirana.frame.db.base.anno.TablePlus;
import lombok.Data;

import java.util.Date;

@Data
@Notes("项目表")
@TablePlus(name = "dict_project")
public class DictProject extends BaseModel {

    @Notes("项目名称")
    @ColumnPlus(default_val = "''", length = "20")
    private String project_name;

    @Notes("项目简介")
    @ColumnPlus(default_val = "''", length = "200")
    private String project_introduce;

    @Notes("项目年份")
    @ColumnPlus(default_val = "''", length = "10")
    private String project_year;

    @Notes("项目级别，字典 dict2_project_level")
    @ColumnPlus(length = "1")
    private int project_level;

    @Notes("合同编号")
    @ColumnPlus(default_val = "''", length = "20")
    private String contract_code;

    @Notes("合同签订时间")
    @ColumnPlus()
    private Date contract_sign_time;

    @Notes("合同金额，单位（元）")
    @ColumnPlus()
    private int contract_amount;

    @Notes("项目周期开始时间")
    @ColumnPlus()
    private Date period_begin;

    @Notes("项目周期结束时间")
    @ColumnPlus()
    private Date period_end;

    @Notes("所属行业，字典 dict2_industry")
    @ColumnPlus(length = "2")
    private int industry;

    @Notes("所属类别（一级），area_info")
    @ColumnPlus(length = "10")
    private int province;

    @Notes("所属地市（二级），area_info")
    @ColumnPlus(length = "10")
    private int city;

    @Notes("所属区县（三级），area_info")
    @ColumnPlus(length = "10")
    private int county;

    @Notes("商机id，外键")
    @ColumnPlus()
    @FKPlus(table = "dict_business")
    private Long business_id;

    @Notes("商机名称")
    @ColumnPlus(default_val = "''", length = "20")
    private String business_name;

    @Notes("项目阶段，字典 dict2_project_step")
    @ColumnPlus(length = "2")
    private int project_step;

    @Notes("售前移交售中最终审核人id")
    @ColumnPlus()
    private String transfer_sz_checkuserid;
    @Notes("售前移交售中最终审核人")
    @ColumnPlus()
    private String transfer_sz_checkusername;
    @Notes("售前移交售中最终审核时间")
    @ColumnPlus()
    private String transfer_sz_time;
    @Notes("售前移交售中最终审核状态，0未提交，1审核通过（通过后dict_project_sz记录信息），2审核驳回。审核记录表 dict_project_review")
    @ColumnPlus(default_val = "0", length = "2")
    private int transfer_sz_state;

    @Notes("售中项目验收最终审核人id")
    @ColumnPlus()
    private String transfer_jw_checkuserid;
    @Notes("售中项目验收最终审核人")
    @ColumnPlus()
    private String transfer_jw_checkusername;
    @Notes("售中项目验收最终审核时间")
    @ColumnPlus()
    private String transfer_jw_time;
    @Notes("售中项目验收最终审核状态，0未提交，1验收通过（通过后dict_project_jw记录信息），2验收驳回。审核记录表 dict_project_review")
    @ColumnPlus(default_val = "0", length = "2")
    private int transfer_jw_state;

    // 服务结束相关
    @Notes("是否服务结束，0未结束，1已结束")
    @ColumnPlus(default_val = "0", length = "2")
    private int service_end_flag;

    @Notes("服务结束时间")
    @ColumnPlus()
    private Date service_end_time;

}
